1. Field of the Invention
The present invention generally relates to computer software. More specifically, the present invention relates to a rendering application configured to provide real-time, goal-directed performed motion alignment for computer animated characters.
2. Description of the Related Art
The term, “rendering application,” refers to a broad variety of computer-based tools used by architects, engineers, animators, video game designers, and other graphics and design professionals. Rendering is the process of generating an image from a model by means of computer programs and/or specified hardware.
A desired feature of rendering applications is the ability to generate frames of an animation sequence in real-time using one or more motion clips. Typically, motion clips are created using a motion capture system, where a human motion capture actor wears markers near each joint to identify a motion by positions or angles between the markers. The markers are tracked to sub-millimeter positions. Motion capture computer software records the positions, angles, velocities, accelerations, and impulses of the markers, providing an accurate digital representation of the actor's motion. The digital representation is then used to generate a motion clip.
In the video game industry, many game products include goal-driven characters that are not controlled directly by the player of the game. These characters are called “non-player characters” or “NPCs.” The most popular games (sports, role-playing, strategy, and first person shooters) make heavy use of NPCs to provide the key action elements in the game. For example, in a football video game, each of the characters on an opposing computer-controlled team is an NPC. However, creating game character motions for both player-controlled characters and NPCs that are both engaging and appear realistic to the user has proven to be quite difficult. Ideally, a user of a video game should see the character motion as being “alive” or “correct,” without motion artifacts that appear to jar a character out of context. More specifically, motion artifacts are particularly apparent in animation sequences that transition from a sequence of locomotion to a performed motion.
“Locomotion” refers to periodic, repetitive motions, such as walking, running, jogging, creeping, swimming, and the like. Locomotion may be goal-directed, meaning that a character intelligently navigates a terrain to reach a defined goal while following an unspecified path around obstacles within the terrain. In contrast, “performed motion” refers to motions designed for specific objects, locations, or orientations in the environment. Performed motions may be any motion that is not locomotion. Examples of performed motion include climbing ladders or stairs, sitting down in a chair, fighting with other characters, shooting a gun, and the like.
Prior art techniques for linking a locomotion sequence to a performed motion rely on “motion graphs.” A motion graph is a network of discrete motion clips with connected transitions that linearly blend from one clip into another clip. A problem with using motion graphs to make the transition to a performed motion is that the generated motion may suffer from motion artifacts that cause the appearance of sliding, jumping, skipping, or other changes that look unnatural.
Other prior art methods provide techniques for causing a character to move to an arbitrary point in a scene without introducing substantial motion artifacts. However, moving a character to a desired location does not address the problem of ensuring that the character is properly oriented or aligned in order to initiate the performed motion sequence. Thus, with these prior art methods, motion artifacts are introduced when transitioning to the performed motion.
Accordingly, there remains the need in the art for a technique for generating realistic animation sequences that include performed motions.